home *** CD-ROM | disk | FTP | other *** search
/ QRZ! Ham Radio 8 / QRZ Ham Radio Callsign Database - Volume 8.iso / pc / files / dsp / 56000tar.z / 56000tar / 56000 / boot / boot.lst < prev    next >
File List  |  1992-04-28  |  4KB  |  133 lines

  1.  
  2.  
  3.  
  4. Motorola DSP56000 Assembler  Version 3.1.12  91-12-16  13:55:22  boot.asm  Page 1
  5.  
  6.  
  7.  
  8. 1                        ;*****************************************************************************
  9. 2                        ;  This routine demonstrates how to construct a module which will boot
  10. 3                        ;  from an external byte-wide EPROM and execute in on-chip Program RAM.
  11. 4                        ;
  12. 5                        ;  The main routine simply toggles the least significant bit of Port-C
  13. 6                        ;  and this activity can be monitored externally with an oscilloscope
  14. 7                        ;  to confirm that the boot occurred correctly.
  15. 8                        ;
  16. 9                        ;  assemble this routine with the following command line:
  17. 10                       ;     asm56000 -a -b -l boot
  18. 11                       ;
  19. 12                       ;  build the S-Record file for use by the PROM-Burner via the SREC utility:
  20. 13                       ;     SREC boot
  21. 14                       ;
  22. 15                       ;  The vectors will be placed into the EPROM at address $C000 and the 
  23. 16                       ;  main routine will start at $C0F0 in the EPROM. 
  24. 17                       ;*****************************************************************************
  25. 18        00FFE1         m_pcc     equ     $FFE1                             ;Port-C control register address (in X:)
  26. 19        00FFE3         m_pcddr   equ     $FFE3                             ;Port-C data direction register
  27. 20        00FFE5         m_pcd     equ     $FFE5                             ;Port-C data register
  28. 21        000050         main      equ     $50                               ;main routine starting address
  29. 22        000000         RUNTIME   equ     0                                 ;bootstrap into P:0
  30. 23        00C000         LOADTIME  equ     $C000                             ;load into EPROM at P:$C000
  31. 24     
  32. 25                                 page    132,66,3,3                        ;format the page for 132 columns, 66 lines
  33. 26     
  34. 27     
  35. 28        P:0000 P:C000                   org     P:RUNTIME,P:LOADTIME
  36. 29        P:0000 P:C000 0D0050            jsr     <GO_1                             ;RESET Vector...start program
  37. 30        P:0001 P:C001 000000            nop                                       ;...vectors have 2 words...
  38. 31     
  39. 32                                        DUP     62                                ;define unused vectors with
  40. 33   m                                    nop                                       ;..."safe" default routine
  41. 34   m                                    nop
  42. 35   m                                    ENDM
  43. 160    
  44. 161    
  45. 162       P:0050 P:C0F0                   org     P:main,P:LOADTIME+(3*main)
  46. 163                             GO_1
  47. 164                                                                                 ;**** simple routine to toggle I/O pin ****
  48. 165       P:0050 P:C0F0 08F4A3            movep             #$0001,x:m_pcddr        ;only lsb of Port-C will be an output
  49.                         000001
  50. 166       P:0052 P:C0F2 08F4A1            movep             #$0000,x:m_pcc          ;all Port-C pins will be G.P. I/O
  51.                         000000
  52. 167                             _loop
  53. 168       P:0054 P:C0F4 0BA500            bchg    #0,x:m_pcd                        ;toggle the lsb of Port-C
  54. 169       P:0055 P:C0F5 0C0054            jmp     <_loop
  55. 170    
  56. 171       000056                CodeSize  set     *
  57. 172    
  58. 173                             ;
  59. 174                             ;    test to see if the code size exceeds the available on-chip resources
  60. 175                             ;           (512 words in on-chip P:RAM)
  61. 176                             ;
  62. 177                                       IF      CodeSize>$1FF
  63. 181                                       ENDIF
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70. Motorola DSP56000 Assembler  Version 3.1.12  91-12-16  13:55:22  boot.asm  Page 2
  71.  
  72.  
  73.  
  74. 182    
  75. 183                                       END
  76.  
  77. 0    Errors
  78. 0    Warnings
  79.  
  80.  
  81.  
  82.  
  83.  
  84.  
  85.  
  86.  
  87.  
  88.  
  89.  
  90.  
  91.  
  92.  
  93.  
  94.  
  95.  
  96.  
  97.  
  98.  
  99.  
  100.  
  101.  
  102.  
  103.  
  104.  
  105.  
  106.  
  107.  
  108.  
  109.  
  110.  
  111.  
  112.  
  113.  
  114.  
  115.  
  116.  
  117.  
  118.  
  119.  
  120.  
  121.  
  122.  
  123.  
  124.  
  125.  
  126.  
  127.  
  128.  
  129.  
  130.  
  131.  
  132.  
  133.